// main.js
const { app, BrowserWindow, Menu, screen, dialog } = require('electron');
const { execFile } = require('child_process');
const path = require('path');
let mainWindow;
function createWindow() {
    // 获取主屏幕的尺寸
    // const mainScreen = screen.getPrimaryDisplay();
    // const size = mainScreen.workAreaSize;
    // const height = size.height * 0.8;
    // const width = height * 2;
    const height = 832
    const width = 1664
    // const height = 720
    // const width = 1440
    console.log(height, width)
    // 创建浏览器窗口
    mainWindow = new BrowserWindow({
        width,
        height,
        show: false,
        resizable: false,
        webPreferences: {
            nodeIntegration: true,
            // cacheSize: 0, // 设置缓存大小为0，禁用缓存
            // partition: 'persist:no - cache' // 使用无缓存的分区
        },
        icon: './public/nezha.png'// 设置窗口图标
        // icon: path.join(__dirname,'./public/nezha.png'),// 设置窗口图标
    });
    // 自定义菜单模板
    const template = [
        {
            label: ''
        },
        {
            label: '文件',
            submenu: [
                {
                    type: 'separator'
                },
                {
                    label: '退出',
                    accelerator: 'CmdOrCtrl+Q',
                    click: () => {
                        app.quit();
                    }
                }
            ]
        },
        {
            label: '清除缓存',
            click: () => {
                // 清除缓存逻辑
                mainWindow.webContents.session.clearCache();
                dialog.showMessageBox(mainWindow, {
                    type: 'info',
                    title: '清除缓存',
                    message: '全部缓存已成功清除。',
                    buttons: ['确定']
                });
            }
        },
        {
            label: '激活板机',
            click: () => {
                // 要执行的 exe 程序的路径
                const exePath = path.join(app.getAppPath(), './active-mode-1.exe');
                // 执行 exe 程序
                execFile(exePath);
                dialog.showMessageBox(mainWindow, {
                    type: 'info',
                    title: '激活板机',
                    message: '请注意板机投屏软件的变化，正在激活...',
                    buttons: ['确定']
                });
            }
        },
        // {
        //     label: 'EC激活',
        //     click: () => {
        //         // 要执行的 exe 程序的路径
        //         const exePath = path.join(app.getAppPath(), './easyClickActivate/easyClickActivate.exe');
        //         // 执行 exe 程序
        //         execFile(exePath);
        //     }
        // },
        {
            label: '帮助',
            click: () => {
                dialog.showMessageBox(mainWindow, {
                    type: 'info',
                    title: '帮助',
                    message: '如果软件异常，可先在菜单【清除缓存】，后重启软件！！！',
                    buttons: ['确定']
                });
            }
        }
    ];
    // 创建菜单
    const menu = Menu.buildFromTemplate(template);
    // 设置应用程序菜单
    Menu.setApplicationMenu(menu);
    // 取消顶部菜单栏
    // Menu.setApplicationMenu(null);
    // 打开开发者工具
    mainWindow.webContents.openDevTools();
    // 加载应用的 HTML 文件
    mainWindow.loadFile('index.html');
    // 页面加载完之后再显示窗口
    mainWindow.on('ready-to-show', () => {
        mainWindow.show();

    });
    // 当窗口关闭时，释放窗口对象
    mainWindow.on('closed', () => {
        mainWindow = null;
    });
}

// Electron 初始化完成后创建窗口
app.whenReady().then(createWindow);

// 当所有窗口都关闭时退出应用（macOS 上的行为不同）
app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') {
        app.quit();
    }
});

app.on('activate', () => {
    if (BrowserWindow.getAllWindows().length === 0) {
        createWindow();
    }
});